/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package byblos.negocio.pacote;

import byblos.negocio.acomodacao.TabelaTarifa;
import byblos.negocio.acomodacao.TipoAcomodacao;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.OneToOne;

/**
 *
 * @author marco
 */
@Entity
public class ItemPacoteAbertoCategoria extends ItemPacoteCategoria<PacoteAberto> {

    @OneToOne(cascade = CascadeType.ALL)
    private TabelaTarifa tabela = new TabelaTarifa();
    @OneToOne(cascade = CascadeType.ALL)
    private TabelaTarifa tabelaAlta = new TabelaTarifa();

    @Override
    public TabelaTarifa getTabela(boolean temporada) {
        if (temporada) {
            return tabelaAlta;
        } else {
            return tabela;
        }
    }

    public TabelaTarifa getTabela() {
        return tabela;
    }

    public void setTabela(TabelaTarifa tabela) {
        this.tabela = tabela;
    }

    public TabelaTarifa getTabelaAlta() {
        return tabelaAlta;
    }

    public void setTabelaAlta(TabelaTarifa tabelaAlta) {
        this.tabelaAlta = tabelaAlta;
    }

    public double getValorSingleBaixa() {
        return getTabela(false).getValor(TipoAcomodacao.SINGLE);
    }

    public double getValorSingleAlta() {
        return getTabela(true).getValor(TipoAcomodacao.SINGLE);
    }

    public double getValorDuploBaixa() {
        return getTabela(false).getValor(TipoAcomodacao.DUPLO);
    }

    public double getValorDuploAlta() {
        return getTabela(true).getValor(TipoAcomodacao.DUPLO);
    }

    public double getValorTriploBaixa() {
        return getTabela(false).getValor(TipoAcomodacao.TRIPLO);
    }

    public double getValorTriploAlta() {
        return getTabela(true).getValor(TipoAcomodacao.TRIPLO);
    }

    public double getValorQuadBaixa() {
        return getTabela(false).getValor(TipoAcomodacao.QUADRUPLO);
    }

    public double getValorQuadAlta() {
        return getTabela(true).getValor(TipoAcomodacao.QUADRUPLO);
    }

    public double getValorQuintBaixa() {
        return getTabela(false).getValor(TipoAcomodacao.QUINTUPLO);
    }

    public double getValorQuintAlta() {
        return getTabela(true).getValor(TipoAcomodacao.QUINTUPLO);
    }
}
